import java.io.File;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.lang.reflect.Field;

public class ObjectFrame {
    public static String ROOT_PATH = "lesson13/task10/";

    public static void clearObject() {
        final File file = new File(ROOT_PATH, "src/data.txt");
        if (file.exists()) {
            file.delete();
        }
    }
    
    // 目标：保存任意对象的字段和其数据到文件中去
    public static void saveObject(Object obj) throws Exception {
        PrintStream ps = new PrintStream(
                new FileOutputStream(new File(ROOT_PATH, "src/data.txt").getPath(), true)
        );
        Class<?> c = obj.getClass();
        
        ps.printf("--------------------%s--------------------%n", c.getSimpleName());
        
        // obj是任意对象
        // 从这个类中提取它的全部成员变量
        /* TODO */
        
        // 遍历每个成员变量，用ps逐行写出到文件，格式为：成员变量名=成员变量值
        /* TODO */
        
        // 关闭流
        ps.close();
    }
}
